import request from '@/utils/request'

/**
 * 订单分析-详情
 * @param  companyPlatformId  平台商ID
 * @param  startDate  数据日期 (日期类型：yyyy-MM-dd)
 * @param  endDate  数据日期 (日期类型：yyyy-MM-dd)
 * @param  pageNo  起始页
 * @param  pageSize  每页条数
 */
 const orderDetailApi = ({ companyPlatformId, startDate, endDate, pageNo, pageSize }) => {
    const data = {
        companyPlatformId,
        startDate,
        endDate,
        pageNo,
        pageSize,
    }
    return request({
        url: 'portal-server/v1/api/real/orderDetail',
        method: 'post',
        data: data
    })
};

/**
 * 订单分析-当月订单详情页面-归属项目下拉列表(pc端)
 * @param  confirmTime  yyyy-MM
 */
 const getOrderProjectInfosApi = ({ confirmTime }) => {
    return request({
        url: `es-portal/v1/api/biDashBoard/getOrderProjectInfos?confirmTime=${confirmTime}`,
        method: 'get',
    })
};

/**
 * 订单分析-当月订单详情页面(pc端)
 * @param  companyPlatformId  平台商ID
 * @param  confirmTime  月份 (日期类型：yyyy-MM)
 * @param  projectCode  项目编码
 * @param  createUser  下单人姓名
 * @param  commodityName  商品名
 * @param  companyServiceName  服务商名
 * @param  orderStatus  订单状态 1:已结单 2:已结束
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderDetailApi = ({ companyPlatformId, confirmTime, projectCode, createUser, commodityName, companyServiceName, orderStatus, pageNum, pageSize }) => {
    const data = {
        companyPlatformId,
        confirmTime,
        projectCode,
        createUser,
        commodityName,
        companyServiceName,
        orderStatus,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderDetail',
        method: 'post',
        data: data
    })
};

/**
 * 订单分析-订单付款明细页面(pc端)
 * @param  orderNum  订单编号
 * @param  payTimeStart  月份 (日期类型：yyyy-MM)
 * @param  payTimeEnd  项目编码
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderPayDetailApi = ({ orderNum, payTimeStart, payTimeEnd, pageNum, pageSize }) => {
    const data = {
        orderNum,
        payTimeStart,
        payTimeEnd,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderPayDetail',
        method: 'post',
        data: data
    })
};

/**
 * 收入分析-详情（收入月列表）
 * @param  companyPlatformId  平台商ID
 * @param  startData  数据日期 (日期类型：yyyy-MM-dd)
 * @param  endData  数据日期 (日期类型：yyyy-MM-dd)
 * @param  pageNo  起始页
 * @param  pageSize  每页条数
 */
 const incomeDetailApi = ({ companyPlatformId, startData, endData, pageNo, pageSize }) => {
    const data = {
        companyPlatformId,
        startData,
        endData,
        pageNo,
        pageSize,
    }
    return request({
        url: 'portal-server/v1/api/real/incomeDetail',
        method: 'post',
        data: data
    })
};


/**
 * 收入分析-订单收入详情页面-归属项目下拉列表(pc端)
 * @param  confirmTime  yyyy-MM
 */
 const getOrderIncomeProjectInfosApi = ({ confirmTime }) => {
    return request({
        url: `es-portal/v1/api/biDashBoard/getOrderIncomeProjectInfos?confirmTime=${confirmTime}`,
        method: 'get',
    })
};

/**
 * 收入分析-订单收入详情页面(pc端)
 * @param  companyPlatformId  平台商ID
 * @param  confirmTime  月份 (日期类型：yyyy-MM)
 * @param  projectCode  项目编码
 * @param  createUser  下单人姓名
 * @param  commodityName  商品名
 * @param  companyServiceName  服务商名
 * @param  orderStatus  订单状态 1:已结单 2:已结束
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderIncomeDetailApi = ({ companyPlatformId, confirmTime, projectCode, createUser, commodityName, companyServiceName, orderStatus, pageNum, pageSize }) => {
    const data = {
        companyPlatformId,
        confirmTime,
        projectCode,
        createUser,
        commodityName,
        companyServiceName,
        orderStatus,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderIncomeDetail',
        method: 'post',
        data: data
    })
};

/**
 * 收入分析-收入付款明细(pc端)
 * @param  orderNum  订单编号
 * @param  payTimeStart  月份 (日期类型：yyyy-MM)
 * @param  payTimeEnd  项目编码
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderIncomePayDetailApi = ({ orderNum, payTimeStart, payTimeEnd, pageNum, pageSize }) => {
    const data = {
        orderNum,
        payTimeStart,
        payTimeEnd,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderIncomePayDetail',
        method: 'post',
        data: data
    })
};

/**
 * 合伙人-详情
 * @param  companyPlatformId  平台商ID
 * @param  startTime  数据日期 (日期类型：yyyy-MM)
 * @param  endTime  数据日期 (日期类型：yyyy-MM)
 * @param  pageNo  起始页
 * @param  pageSize  每页条数
 */
 const partnerDetailApi = ({ companyPlatformId, startTime, endTime, pageNo, pageSize }) => {
    const data = {
        companyPlatformId,
        startTime,
        endTime,
        pageNo,
        pageSize,
    }
    return request({
        url: 'portal-server/v1/api/real/partnerDetail',
        method: 'post',
        data: data
    })
};

/**
 * 合伙人-当月分佣详情页面-归属项目下拉列表(pc端)
 * @param  confirmTime  yyyy-MM
 */
 const getOrderPartnerProjectInfosApi = ({ confirmTime }) => {
    return request({
        url: `es-portal/v1/api/biDashBoard/getOrderPartnerProjectInfos?confirmTime=${confirmTime}`,
        method: 'get',
    })
};

/**
 * 合伙人-当月分佣详情页面(pc端)
 * @param  companyPlatformId  平台商ID
 * @param  confirmTime  月份 (日期类型：yyyy-MM)
 * @param  projectCode  项目编码
 * @param  createUser  下单人姓名
 * @param  commodityName  商品名
 * @param  companyServiceName  服务商名
 * @param  orderStatus  订单状态 1:已结单 2:已结束
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderPartnerDetailApi = ({ companyPlatformId, confirmTime, projectCode, createUser, commodityName, companyServiceName, orderStatus, pageNum, pageSize }) => {
    const data = {
        companyPlatformId,
        confirmTime,
        projectCode,
        createUser,
        commodityName,
        companyServiceName,
        orderStatus,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderPartnerDetail',
        method: 'post',
        data: data
    })
};

/**
 * 合伙人-分佣付款明细(pc端)
 * @param  orderNum  订单编号
 * @param  payTimeStart  月份 (日期类型：yyyy-MM)
 * @param  payTimeEnd  项目编码
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const esPortalOrderPartnerPayDetailApi = ({ orderNum, payTimeStart, payTimeEnd, pageNum, pageSize }) => {
    const data = {
        orderNum,
        payTimeStart,
        payTimeEnd,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderPartnerPayDetail',
        method: 'post',
        data: data
    })
};

/**
 * 合伙人-分佣付款明细(pc端)
 * @param  phone  手机
 * @param  userName  姓名
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const countDividePersonPriceApi = ({ phone, userName, pageNum, pageSize }) => {
    const data = {
        phone,
        userName,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/countDividePersonPrice',
        method: 'post',
        data: data
    })
};

/**
 * 服务商-详情
 * @param  companyPlatformId  平台商ID
 * @param  startDate  数据日期 (日期类型：yyyy-MM-dd)
 * @param  endDate  数据日期 (日期类型：yyyy-MM-dd)
 * @param  pageNo  起始页
 * @param  pageSize  每页条数
 */
 const facilitatorListApi = ({ companyPlatformId, startDate, endDate, pageNo, pageSize }) => {
    const data = {
        companyPlatformId,
        startDate,
        endDate,
        pageNo,
        pageSize,
    }
    return request({
        url: 'portal-server/v1/api/real/facilitatorList',
        method: 'post',
        data: data
    })
};

/**
 * 服务商-归属项目下拉列表
 * @param  confirmTime  yyyy-MM
 */
 const getOrderIncomeForCompanyServiceProjectInfosApi = ({ confirmTime }) => {
    return request({
        url: `es-portal/v1/api/biDashBoard/getOrderIncomeForCompanyServiceProjectInfos?confirmTime=${confirmTime}`,
        method: 'get',
    })
};

/**
 * 服务商-当月分佣详情页面
 * @param  companyPlatformId  平台商ID
 * @param  confirmTime  月份 (日期类型：yyyy-MM)
 * @param  projectCode  项目编码
 * @param  createUser  下单人姓名
 * @param  commodityName  商品名
 * @param  companyServiceName  服务商名
 * @param  orderStatus  订单状态 1:已结单 2:已结束
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const queryPageOrderIncomeForCompanyServiceDetailApi = ({ companyPlatformId, confirmTime, projectCode, createUser, commodityName, companyServiceName, orderStatus, pageNum, pageSize }) => {
    const data = {
        companyPlatformId,
        confirmTime,
        projectCode,
        createUser,
        commodityName,
        companyServiceName,
        orderStatus,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/queryPageOrderIncomeForCompanyServiceDetail',
        method: 'post',
        data: data
    })
};

/**
 * 服务商-收入付款明细
 * @param  orderNum  订单编号
 * @param  payTimeStart  月份 (日期类型：yyyy-MM)
 * @param  payTimeEnd  项目编码
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const orderIncomePayDetailForCompanyServiceApi = ({ orderNum, payTimeStart, payTimeEnd, pageNum, pageSize }) => {
    const data = {
        orderNum,
        payTimeStart,
        payTimeEnd,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderIncomePayDetailForCompanyService',
        method: 'post',
        data: data
    })
};

/**
 * 项目排名(订单收入)-项目控件
 */
 const orderIncomeProjectDownApi = (companyPlatformId) => {
    return request({
        url: `portal-server/v1/api/real/orderIncomeProjectDown?companyPlatformId=${companyPlatformId}`,
        method: 'get',
    })
};

/**
 * 项目排名(订单收入)-时间控件
 */
 const orderIncomeTimeDownApi = (companyPlatformId) => {
    return request({
        url: `portal-server/v1/api/real/orderIncomeTimeDown?companyPlatformId=${companyPlatformId}`,
        method: 'get',
    })
};

/**
 * 项目排名(订单收入)-卡片
 * @param  companyPlatformName  平台商名称
 * @param  projectName  所属项目名称
 * @param  orderYear  订单时间 (日期类型：YYYY)
 * @param  pageNo  起始页
 * @param  pageSize  每页条数
 */
 const orderIncomeListApi = ({ companyPlatformName, projectName, orderYear, pageNo, pageSize }) => {
	const data = {
		companyPlatformName,
		projectName,
		orderYear,
		pageNo,
		pageSize,
	}
	return request({
		url: 'portal-server/v1/api/real/orderIncomeList',
		method: 'post',
		data: data
	})
};

/**
 * 项目排名(订单收入)-订单详情页面-归属项目下拉列表
 * @param  confirmTime  yyyy
 */
 const getProjectInfosApi = ({ confirmTime }) => {
    return request({
        url: `es-portal/v1/api/biDashBoard/getProjectInfos?confirmTime=${confirmTime}`,
        method: 'get',
    })
};

/**
 * 项目排名(订单收入)-订单详情页面
 * @param  companyPlatformId  平台商ID
 * @param  year	  年份
 * @param  projectCode  项目编码
 * @param  commodityName  商品名
 * @param  orderStatus  订单状态 1:已结单 2:已结束
 * @param  createUser  下单人姓名
 * @param  companyServiceName  服务商名
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const queryPageOrderIncomeDetailForProjectApi = ({ companyPlatformId, year, projectCode, commodityName, orderStatus, createUser, companyServiceName, pageNum, pageSize }) => {
    const data = {
        companyPlatformId,
        year,
        projectCode,
        commodityName,
        orderStatus,
        createUser,
        companyServiceName,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/queryPageOrderIncomeDetailForProject',
        method: 'post',
        data: data
    })
};

/**
 * 项目排名(订单收入)-收入付款明细页面
 * @param  orderNum  订单编号
 * @param  payTimeStart  开始日期 (日期类型：yyyy-MM-dd)
 * @param  payTimeEnd  结束日期 (日期类型：yyyy-MM-dd)
 * @param  pageNum  起始页
 * @param  pageSize  每页条数
 */
 const orderIncomePayDetailForProjectApi = ({ orderNum, payTimeStart, payTimeEnd, pageNum, pageSize }) => {
    const data = {
        orderNum,
        payTimeStart,
        payTimeEnd,
        pageNum,
        pageSize,
    }
    return request({
        url: 'es-portal/v1/api/biDashBoard/orderIncomePayDetailForProject',
        method: 'post',
        data: data
    })
};

export default {
    orderDetailApi,
    getOrderProjectInfosApi,
    esPortalOrderDetailApi,
    esPortalOrderPayDetailApi,
    incomeDetailApi,
    getOrderIncomeProjectInfosApi,
    esPortalOrderIncomeDetailApi,
    esPortalOrderIncomePayDetailApi,
    partnerDetailApi,
    getOrderPartnerProjectInfosApi,
    esPortalOrderPartnerDetailApi,
    esPortalOrderPartnerPayDetailApi,
    countDividePersonPriceApi,
    facilitatorListApi,
    getOrderIncomeForCompanyServiceProjectInfosApi,
    queryPageOrderIncomeForCompanyServiceDetailApi,
    orderIncomePayDetailForCompanyServiceApi,
    orderIncomeProjectDownApi,
    orderIncomeTimeDownApi,
    orderIncomeListApi,
    getProjectInfosApi,
    queryPageOrderIncomeDetailForProjectApi,
    orderIncomePayDetailForProjectApi,
}
